<!DOCTYPE html>

<html lang="en" data-content_root="../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Changelog &#8212; Pytch  documentation</title>
    <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=03e43079" />
    <link rel="stylesheet" type="text/css" href="../_static/classic.css?v=36340f97" />
    <link rel="stylesheet" type="text/css" href="../_static/css/pytch-classic.css?v=0321735e" />
    
    <script src="../_static/documentation_options.js?v=7f41d439"></script>
    <script src="../_static/doctools.js?v=9bcbadda"></script>
    <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
    
    <link rel="icon" href="../_static/favicon.ico"/>
    <link rel="author" title="About these documents" href="../about.html" />
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Legal information" href="../legal/index.html" />
    <link rel="prev" title="Source and build information" href="../source-build.html" /> 
  </head><body>
<div class="NavBar">
  <a href="../../app/"><h1>Pytch</h1></a>
  <ul>
    <a href="https://pytch.scss.tcd.ie/"><li>About Pytch</li></a>
    <a href="../index.html"><li>Help</li></a>
    <a href="../../app/tutorials/"><li>Tutorials</li></a>
    <a href="../../app/my-projects/"><li>My projects</li></a>
  </ul>
</div>
<div class="warning-work-in-progress">
  <p>These help pages are incomplete — we are working on it!</p>
</div>
  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="changelog">
<h1>Changelog<a class="headerlink" href="#changelog" title="Link to this heading">¶</a></h1>
<p>This page outlines what’s changed as we’ve released new versions of
Pytch.</p>
<section id="vm-m-p-yyyy-mm-dd">
<h2>vM.m.p (YYYY-MM-DD)<a class="headerlink" href="#vm-m-p-yyyy-mm-dd" title="Link to this heading">¶</a></h2>
</section>
<section id="v2-9-0-2025-01-09">
<h2>v2.9.0 (2025-01-09)<a class="headerlink" href="#v2-9-0-2025-01-09" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add tool to write skeleton of a new tutorial.</p></li>
<li><p>Improve help sidebar content for <code class="docutils literal notranslate"><span class="pre">show_variable()</span></code> and
<code class="docutils literal notranslate"><span class="pre">hide_variable()</span></code>.</p></li>
<li><p>Improve contrast and layout of activity bar and script-by-script
tutorials.</p></li>
<li><p>Default to <em>v2</em> of interface (with script-by-script features turned
on).</p></li>
<li><p>Add five new script-by-script tutorials and update another.</p></li>
</ul>
</section>
<section id="v2-8-1-2024-12-11">
<h2>v2.8.1 (2024-12-11)<a class="headerlink" href="#v2-8-1-2024-12-11" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix minor rendering bugs in the “progress trail” for
script-by-script tutorials.</p></li>
<li><p>Document <code class="docutils literal notranslate"><span class="pre">random.choice()</span></code> in help sidebar.</p></li>
</ul>
</section>
<section id="v2-8-0-2024-11-19">
<h2>v2.8.0 (2024-11-19)<a class="headerlink" href="#v2-8-0-2024-11-19" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Improve chapter navigation for script-by-script tutorials.</p></li>
</ul>
</section>
<section id="v2-7-1-2024-11-02">
<h2>v2.7.1 (2024-11-02)<a class="headerlink" href="#v2-7-1-2024-11-02" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix layout bug with play/stop buttons in standalone demos.</p></li>
</ul>
</section>
<section id="v2-7-0-2024-10-30">
<h2>v2.7.0 (2024-10-30)<a class="headerlink" href="#v2-7-0-2024-10-30" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Improve robustness of build process.</p></li>
<li><p>Support more kinds of learner tasks in script-by-script tutorials.</p></li>
<li><p>Make minor accessibility and related improvements.</p></li>
<li><p>Improve presentation of learner tasks in script-by-script tutorials.</p></li>
<li><p>Allow users to duplicate a script.</p></li>
<li><p>Try to keep cursor line visible when navigating script-by-script
code with keyboard.</p></li>
<li><p>Document <code class="docutils literal notranslate"><span class="pre">random.uniform()</span></code> in help sidebar.</p></li>
</ul>
</section>
<section id="v2-6-0-2024-10-21">
<h2>v2.6.0 (2024-10-21)<a class="headerlink" href="#v2-6-0-2024-10-21" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Improve developer documentation and tools.</p></li>
<li><p>Support script-by-script lesson specimens.</p></li>
<li><p>Add script-by-script specimens for existing lesson plans.</p></li>
<li><p>Fix minor bug with project-from-specimen behaviour.</p></li>
<li><p>Fix bugs with ordering of assets in script-by-script projects.</p></li>
</ul>
</section>
<section id="v2-5-0-2024-09-16">
<h2>v2.5.0 (2024-09-16)<a class="headerlink" href="#v2-5-0-2024-09-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix errors in script-by-script help sidebar content.</p></li>
<li><p>Improve contrast and colours in script-by-script IDE.</p></li>
</ul>
</section>
<section id="v2-4-0-2024-09-10">
<h2>v2.4.0 (2024-09-10)<a class="headerlink" href="#v2-4-0-2024-09-10" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Check that <code class="docutils literal notranslate"><span class="pre">create_clone_of()</span></code> has been given a Pytch sprite.</p></li>
<li><p>Update internal development tools.</p></li>
<li><p>New more mobile-friendly front page.  Thanks to Duncan Wallace for
substantial contributions to this work.</p></li>
</ul>
</section>
<section id="v2-3-0-2024-07-10">
<h2>v2.3.0 (2024-07-10)<a class="headerlink" href="#v2-3-0-2024-07-10" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Make “Add something” button background only as big as needed.</p></li>
<li><p>Check that <code class="docutils literal notranslate"><span class="pre">wait_seconds()</span></code> has been given a number.</p></li>
<li><p>Allow <code class="docutils literal notranslate"><span class="pre">start_sound()</span></code> and <code class="docutils literal notranslate"><span class="pre">play_sound_until_done()</span></code> to be given
a number, meaning the sound’s index in the Sprite’s (or Stage’s)
list of sounds.  Both methods still accept a string, meaning the
sound’s name.</p></li>
<li><p>Display labels on costumes, backdrops, and sounds showing zero-based
index.</p></li>
<li><p>Add examples for <code class="docutils literal notranslate"><span class="pre">broadcast()</span></code> and <code class="docutils literal notranslate"><span class="pre">broadcast_and_wait()</span></code> to
help sidebar content.</p></li>
</ul>
</section>
<section id="v2-2-0-2024-05-30">
<h2>v2.2.0 (2024-05-30)<a class="headerlink" href="#v2-2-0-2024-05-30" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix bug whereby using browser’s “back” button left some modals still
visible, sometimes leading to crashes.</p></li>
<li><p>Add ability to use <code class="docutils literal notranslate"><span class="pre">ui-v2</span></code> query param in URL to choose the V2 UI.</p></li>
</ul>
</section>
<section id="v2-1-0-2024-05-10">
<h2>v2.1.0 (2024-05-10)<a class="headerlink" href="#v2-1-0-2024-05-10" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add “standalone play demo” feature.</p></li>
<li><p>Improve cues for usage of “task done” checkboxes in per-method
lessons.</p></li>
<li><p>Fix minor bug whereby newly added scripts for hat blocks not
requiring arguments (e.g., green-flag) did not get editor focus.</p></li>
</ul>
</section>
<section id="v2-0-0-2024-04-03">
<h2>v2.0.0 (2024-04-03)<a class="headerlink" href="#v2-0-0-2024-04-03" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add new <em>script-by-script</em> editing mode and tutorial.</p></li>
<li><p>Update styling.</p></li>
<li><p>Handle capital/lower-case letters more sensibly for when-key-pressed
scripts and use of <code class="docutils literal notranslate"><span class="pre">key_pressed()</span></code> function.</p></li>
</ul>
</section>
<section id="v1-11-1-2023-12-21">
<h2>v1.11.1 (2023-12-21)<a class="headerlink" href="#v1-11-1-2023-12-21" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Update banner in documentation pages.</p></li>
</ul>
</section>
<section id="v1-11-0-2023-12-21">
<h2>v1.11.0 (2023-12-21)<a class="headerlink" href="#v1-11-0-2023-12-21" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Update privacy policy to mention Apache logs.</p></li>
<li><p>Update and streamline front page.</p></li>
<li><p>Add minimal basic anonymous usage logging.</p></li>
</ul>
</section>
<section id="v1-10-0-2023-11-14">
<h2>v1.10.0 (2023-11-14)<a class="headerlink" href="#v1-10-0-2023-11-14" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Release v1 of specimens in support of CSLinc lesson plans.</p></li>
<li><p>Do not report unreachable code as a <code class="docutils literal notranslate"><span class="pre">SyntaxError</span></code>.</p></li>
<li><p>Experimental: Add ability to copy syntax-highlighted code from
editor with control-shift-C.</p></li>
</ul>
</section>
<section id="v1-9-0-2023-08-30">
<h2>v1.9.0 (2023-08-30)<a class="headerlink" href="#v1-9-0-2023-08-30" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Be more helpful when getting filename from user for downloading or
exporting project zipfile.</p></li>
<li><p>Add ability to create projects linked to a “specimen”.</p></li>
</ul>
</section>
<section id="v1-8-0-2023-08-15">
<h2>v1.8.0 (2023-08-15)<a class="headerlink" href="#v1-8-0-2023-08-15" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Record last-modified time for projects, and show
most-recently-modified projects first in <em>My projects</em> list.</p></li>
<li><p>(Redesign some internals.)</p></li>
</ul>
</section>
<section id="v1-7-0-2023-07-19">
<h2>v1.7.0 (2023-07-19)<a class="headerlink" href="#v1-7-0-2023-07-19" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add feature to help users find coordinates on the stage.</p></li>
<li><p>Add ability to share a link to a particular tutorial.</p></li>
<li><p>Update many internal dependencies.</p></li>
</ul>
</section>
<section id="v1-6-0-2023-06-27">
<h2>v1.6.0 (2023-06-27)<a class="headerlink" href="#v1-6-0-2023-06-27" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Redesign some internals; no user-visible changes.</p></li>
</ul>
</section>
<section id="v1-5-1-2023-06-01">
<h2>v1.5.1 (2023-06-01)<a class="headerlink" href="#v1-5-1-2023-06-01" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Allow import of Google Drive zipfiles uploaded from Windows.</p></li>
</ul>
</section>
<section id="v1-5-0-2023-05-31">
<h2>v1.5.0 (2023-05-31)<a class="headerlink" href="#v1-5-0-2023-05-31" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix bug whereby <code class="docutils literal notranslate"><span class="pre">self.say_for_seconds(&quot;&quot;,</span> <span class="pre">1)</span></code> raised error.</p></li>
<li><p>Update developer documentation.</p></li>
<li><p>Add ability to save/load to/from Google Drive.</p></li>
</ul>
</section>
<section id="v1-4-1-2023-05-09">
<h2>v1.4.1 (2023-05-09)<a class="headerlink" href="#v1-4-1-2023-05-09" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Gather <em>Trimon</em> tutorial images into groups.</p></li>
</ul>
</section>
<section id="v1-4-0-2023-05-09">
<h2>v1.4.0 (2023-05-09)<a class="headerlink" href="#v1-4-0-2023-05-09" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add <code class="docutils literal notranslate"><span class="pre">LICENSE.md</span></code> files to all repos.</p></li>
<li><p>Add <em>Trimon</em> tutorial.</p></li>
<li><p>Add privacy policy and terms of use.</p></li>
<li><p>Add fav-icon.</p></li>
</ul>
</section>
<section id="v1-3-0-2023-03-06">
<h2>v1.3.0 (2023-03-06)<a class="headerlink" href="#v1-3-0-2023-03-06" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Experimental: Add ability to choose from a library of media when
adding an asset to a project.  (Thanks to Justine Moulin for
contributing towards this work.)</p></li>
</ul>
</section>
<section id="v1-2-0-2023-01-16">
<h2>v1.2.0 (2023-01-16)<a class="headerlink" href="#v1-2-0-2023-01-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix bug whereby cropped and/or scaled images lost their cropping
and/or scaling information when making a copy of the project.</p></li>
</ul>
</section>
<section id="v1-1-0-2022-11-29">
<h2>v1.1.0 (2022-11-29)<a class="headerlink" href="#v1-1-0-2022-11-29" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add <em>Splat the moles</em> tutorial.</p></li>
<li><p>Sort tutorials list in order of increasing difficulty.</p></li>
<li><p>Fix bug whereby cropped and/or scaled images lost their cropping
and/or scaling information when the project was downloaded as a
zipfile.</p></li>
</ul>
</section>
<section id="v1-0-0-2022-10-21">
<h2>v1.0.0 (2022-10-21)<a class="headerlink" href="#v1-0-0-2022-10-21" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>To celebrate EU Code Week 2022, we are officially launching v1 of
Pytch!</p></li>
</ul>
</section>
<section id="v0-0-36-2022-10-12">
<h2>v0.0.36 (2022-10-12)<a class="headerlink" href="#v0-0-36-2022-10-12" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Update developer set-up documentation.</p></li>
<li><p>Add ability to crop/scale image assets (experimental).</p></li>
</ul>
</section>
<section id="v0-0-35-2022-09-29">
<h2>v0.0.35 (2022-09-29)<a class="headerlink" href="#v0-0-35-2022-09-29" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Divide help sidebar into collapsible sections.</p></li>
</ul>
</section>
<section id="v0-0-34-2022-09-15">
<h2>v0.0.34 (2022-09-15)<a class="headerlink" href="#v0-0-34-2022-09-15" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>When copying code from a “Change your code like this” section of a
tutorial, convert <code class="docutils literal notranslate"><span class="pre">&quot;·&quot;</span></code> characters back into spaces.</p></li>
<li><p>Add support for controlling the volume of sounds played by sprites
or the stage.</p></li>
<li><p>Add <em>Multiple choice quiz</em> tutorial.</p></li>
</ul>
</section>
<section id="v0-0-33-2022-08-19">
<h2>v0.0.33 (2022-08-19)<a class="headerlink" href="#v0-0-33-2022-08-19" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix bug whereby attempting to use an unsupported sound asset made
app hang.</p></li>
<li><p>Give more useful error if user’s Stage has no <code class="docutils literal notranslate"><span class="pre">Backdrops</span></code>.</p></li>
<li><p>Fix bug whereby rapidly deleting and creating clones could sometimes
lead to an unhelpful error.  (Thanks to Olus Education student Leo
Mirolo for the report.)</p></li>
<li><p>Detect very-long-running <code class="docutils literal notranslate"><span class="pre">while</span></code> or <code class="docutils literal notranslate"><span class="pre">for</span></code> loops when importing
user’s code and raise an error.</p></li>
<li><p>Minor updates to user-level documentation.</p></li>
<li><p>Update to current upstream Skulpt.</p></li>
<li><p>Fix inconsistent reporting and go-to-location behaviour for errors.</p></li>
</ul>
</section>
<section id="v0-0-32-2022-07-18">
<h2>v0.0.32 (2022-07-18)<a class="headerlink" href="#v0-0-32-2022-07-18" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix minor bug whereby undo history in editor contains “loading”
text.</p></li>
<li><p>Disable “overwrite” mode in code editor.</p></li>
</ul>
</section>
<section id="v0-0-31-2022-07-12">
<h2>v0.0.31 (2022-07-12)<a class="headerlink" href="#v0-0-31-2022-07-12" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add ability to make a copy of a project.</p></li>
<li><p>Fix bug whereby attempting to add a corrupt image asset made app
hang.</p></li>
</ul>
</section>
<section id="v0-0-30-2022-06-16">
<h2>v0.0.30 (2022-06-16)<a class="headerlink" href="#v0-0-30-2022-06-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Make messages for syntax errors more helpful, by means of Tiger
Python.</p></li>
<li><p>Simplify the <em>Catch the apple</em> tutorial.</p></li>
<li><p>Exit full-screen mode if an error occurs.</p></li>
</ul>
</section>
<section id="v0-0-29-2022-06-03">
<h2>v0.0.29 (2022-06-03)<a class="headerlink" href="#v0-0-29-2022-06-03" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix bug whereby specifying <code class="docutils literal notranslate"><span class="pre">Sounds</span></code> as a non-list crashed app.</p></li>
<li><p>Allow tutorial authors to include Scratchblocks code.  (Thanks to
Justine Moulin for contributing this work.)</p></li>
</ul>
</section>
<section id="v0-0-28-2022-05-19">
<h2>v0.0.28 (2022-05-19)<a class="headerlink" href="#v0-0-28-2022-05-19" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add “blue invaders” tutorial.</p></li>
<li><p>Improve organisation of some tutorials.</p></li>
</ul>
</section>
<section id="v0-0-27-2022-05-16">
<h2>v0.0.27 (2022-05-16)<a class="headerlink" href="#v0-0-27-2022-05-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add challenges to “hello world” tutorial.</p></li>
<li><p>Add difficulty tags to tutorial summary cards.  (Thanks to Justine
Moulin for contributing this work.)</p></li>
<li><p>Add ability to create “bare-bones” project (with no example code).</p></li>
<li><p>Provide default name when creating a new project.</p></li>
</ul>
</section>
<section id="v0-0-26-2022-03-12">
<h2>v0.0.26 (2022-03-12)<a class="headerlink" href="#v0-0-26-2022-03-12" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add icons to green-flag and red-stop buttons.</p></li>
<li><p>Add ability to select multiple projects and then delete them all at
once.</p></li>
</ul>
</section>
<section id="v0-0-25-2022-03-04">
<h2>v0.0.25 (2022-03-04)<a class="headerlink" href="#v0-0-25-2022-03-04" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add “shoot the fruit” tutorial.</p></li>
</ul>
</section>
<section id="v0-0-24-2022-02-28">
<h2>v0.0.24 (2022-02-28)<a class="headerlink" href="#v0-0-24-2022-02-28" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add full-screen layout.</p></li>
<li><p>Improve presentation of “Change your code like this” sections in
tutorials.  Add pop-up help panel explaining how changes are shown.</p></li>
<li><p>Expand documentation on development set-up; improve checks in
script.  Make development scripts more robust and portable.  Improve
developer docs.  Update various dependencies.</p></li>
<li><p>Give better error messages (trying to set a sprite’s <code class="docutils literal notranslate"><span class="pre">direction</span></code>;
giving <code class="docutils literal notranslate"><span class="pre">say_for_seconds()</span></code> a non-numeric duration argument; giving
<code class="docutils literal notranslate"><span class="pre">say()</span></code> a non-string, non-numeric content argument).</p></li>
<li><p>Add <code class="docutils literal notranslate"><span class="pre">pytch.stop_all()</span></code> function.</p></li>
<li><p>Replace “MyStuff” with “home” button in IDE.</p></li>
<li><p>Make browser window title contain more useful information.</p></li>
<li><p>Fix minor bug allowing deleted assets to still be used.</p></li>
<li><p>Add “catch the apple” tutorial.</p></li>
</ul>
</section>
<section id="v0-0-23-2021-09-15">
<h2>v0.0.23 (2021-09-15)<a class="headerlink" href="#v0-0-23-2021-09-15" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Bring Bunner tutorial up-to-date for <code class="docutils literal notranslate"><span class="pre">Sprite.direction</span></code> property.</p></li>
</ul>
</section>
<section id="v0-0-22-2021-09-14">
<h2>v0.0.22 (2021-09-14)<a class="headerlink" href="#v0-0-22-2021-09-14" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Fix race-condition bug in <code class="docutils literal notranslate"><span class="pre">qbert</span></code> tutorial.</p></li>
<li><p>Experimental: Allow easing functions in <code class="docutils literal notranslate"><span class="pre">Sprite.glide_to_xy()</span></code>.</p></li>
<li><p>Add ability to rename a project.</p></li>
<li><p>Add ability to upload multiple project zipfiles at once.</p></li>
<li><p>Show version tag in navigation banner.</p></li>
</ul>
</section>
<section id="v0-0-21-2021-09-08">
<h2>v0.0.21 (2021-09-08)<a class="headerlink" href="#v0-0-21-2021-09-08" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Minor wording changes in text content of site.</p></li>
<li><p>Add <code class="docutils literal notranslate"><span class="pre">Sprite.size</span></code> property.</p></li>
<li><p>Experimental: Add mechanism for suggesting a demo.</p></li>
</ul>
</section>
<section id="v0-0-20-2021-09-03">
<h2>v0.0.20 (2021-09-03)<a class="headerlink" href="#v0-0-20-2021-09-03" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Support rotation of Sprites.  (Touch- and click-detection is not yet
aware of rotation and so will be inaccurate for rotated Sprites.)</p></li>
</ul>
</section>
<section id="v0-0-19-2021-08-26">
<h2>v0.0.19 (2021-08-26)<a class="headerlink" href="#v0-0-19-2021-08-26" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Allow adding more than one asset (graphic / sound file) at once.
Forbid adding unknown asset types.</p></li>
<li><p><strong>Remove BUILD button</strong> — the green flag now builds then sends
green-flag event.  Update tutorials accordingly.</p></li>
<li><p>Allow building by keyboard command from editor (<code class="docutils literal notranslate"><span class="pre">Ctrl-Enter</span></code> and
<code class="docutils literal notranslate"><span class="pre">Ctrl-Shift-Enter</span></code>).</p></li>
<li><p>Bugfixes: Multi-hunk patches in tutorials were not displayed
correctly.  Tooltip was not positioned correctly when changing IDE
layout.</p></li>
</ul>
</section>
<section id="v0-0-18-2021-07-27">
<h2>v0.0.18 (2021-07-27)<a class="headerlink" href="#v0-0-18-2021-07-27" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Update language acknowledging origin of ticket vending machine
tutorial.</p></li>
</ul>
</section>
<section id="v0-0-17-2021-07-22">
<h2>v0.0.17 (2021-07-22)<a class="headerlink" href="#v0-0-17-2021-07-22" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Provide more helpful errors if certain Pytch functions (e.g.,
<code class="docutils literal notranslate"><span class="pre">pytch.wait_seconds()</span></code>) are called at top-level of user’s program.</p></li>
<li><p>Add URL route to suggest a particular tutorial.</p></li>
<li><p>Update front page content.</p></li>
<li><p>Show full tracebacks for build errors.</p></li>
<li><p>Include “show/hide variable” in help sidebar.</p></li>
<li><p>Support images in tutorial content.</p></li>
<li><p>Show friendlier error page for unknown route.</p></li>
<li><p>Add <em>Ticket Vending Machine</em> tutorial.</p></li>
</ul>
</section>
<section id="v0-0-16-2021-07-07">
<h2>v0.0.16 (2021-07-07)<a class="headerlink" href="#v0-0-16-2021-07-07" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p><strong>Breaking:</strong> Rename some Sprite and Stage methods to be closer to
Scratch conventions.</p>
<ul>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.get_x()</span></code> has been replaced by the property
<code class="docutils literal notranslate"><span class="pre">self.x_position</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.get_y()</span></code> has been replaced by the property
<code class="docutils literal notranslate"><span class="pre">self.y_position</span></code>.</p></li>
<li><p>The function <code class="docutils literal notranslate"><span class="pre">pytch.key_is_pressed()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">pytch.key_pressed()</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.move_to_front_layer()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">self.go_to_front_layer()</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.move_to_back_layer()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">self.go_to_back_layer()</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.move_forward_layers()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">self.go_forward_layers()</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.move_backward_layers()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">self.go_backward_layers()</span></code>.</p></li>
<li><p>The method <code class="docutils literal notranslate"><span class="pre">self.ask_and_wait_for_answer()</span></code> has been renamed to
<code class="docutils literal notranslate"><span class="pre">self.ask_and_wait()</span></code>.</p></li>
</ul>
</li>
<li><p><strong>Breaking:</strong> Remove the method <code class="docutils literal notranslate"><span class="pre">self.say_nothing()</span></code>.  To remove a
Sprite’s speech bubble, use <code class="docutils literal notranslate"><span class="pre">self.say(&quot;&quot;)</span></code> instead.</p></li>
<li><p>Update documentation and tutorials to reflect above changes.</p></li>
<li><p>Improve and extend documentation.</p></li>
<li><p>Experimental: Add variable watchers — <code class="docutils literal notranslate"><span class="pre">pytch.show_variable(obj,</span>
<span class="pre">attr_name)</span></code>.</p></li>
<li><p>Add a help sidebar to the IDE, summarising available Pytch methods
and functions, with examples and Scratch equivalents.</p></li>
</ul>
</section>
<section id="v0-0-15-2021-06-04">
<h2>v0.0.15 (2021-06-04)<a class="headerlink" href="#v0-0-15-2021-06-04" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Update <em>Bunner</em> tutorial.</p></li>
<li><p>Fix minor layout, documentation, and developer-script problems.</p></li>
</ul>
</section>
<section id="v0-0-14-2021-05-21">
<h2>v0.0.14 (2021-05-21)<a class="headerlink" href="#v0-0-14-2021-05-21" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Improve developer docs and scripts.</p></li>
<li><p>Update Welcome page.</p></li>
</ul>
</section>
<section id="v0-0-13-2021-05-15">
<h2>v0.0.13 (2021-05-15)<a class="headerlink" href="#v0-0-13-2021-05-15" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add <code class="docutils literal notranslate"><span class="pre">ask_and_wait_for_answer()</span></code> syscall, and corresponding method
on <code class="docutils literal notranslate"><span class="pre">Sprite</span></code> and <code class="docutils literal notranslate"><span class="pre">Stage</span></code>.</p></li>
<li><p>Minor improvements to developer docs and scripts.</p></li>
<li><p>Enable search (Ctrl-F) and search/replace (Ctrl-H) in code editor.</p></li>
<li><p>Minor bugfix: Make <code class="docutils literal notranslate"><span class="pre">say_for_seconds()</span></code> only cancel its own speech.</p></li>
</ul>
</section>
<section id="v0-0-12-2021-04-03">
<h2>v0.0.12 (2021-04-03)<a class="headerlink" href="#v0-0-12-2021-04-03" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Allow user to create a project by uploading a previously-downloaded
zipfile.</p></li>
</ul>
</section>
<section id="v0-0-11-2021-03-16">
<h2>v0.0.11 (2021-03-16)<a class="headerlink" href="#v0-0-11-2021-03-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Provide immediate feedback when creating demo from Featured Project.</p></li>
</ul>
</section>
<section id="v0-0-10-2021-03-16">
<h2>v0.0.10 (2021-03-16)<a class="headerlink" href="#v0-0-10-2021-03-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add ability to launch <em>demo</em> of tutorial, which creates a project
with code as of the completed tutorial, and not connected to that
tutorial.</p></li>
<li><p>Add a two-stop tour of the buttons required to build and green-flag
a project.  Enabled when first creating a project as a demo of a
tutorial.</p></li>
<li><p>Re-organise front page with “Featured projects”, and information
about how to use Pytch.</p></li>
<li><p>Add instructions (as code comment) to the three tutorials included
as featured projects.</p></li>
</ul>
</section>
<section id="v0-0-9-2021-03-03">
<h2>v0.0.9 (2021-03-03)<a class="headerlink" href="#v0-0-9-2021-03-03" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Bugfix: With the stage at a non-default size (as happens when the
user drags the divider), the location of a mouse click was computed
incorrectly, leading to wrong <code class="docutils literal notranslate"><span class="pre">when_this_sprite_clicked</span></code>
behaviour.  Click coordinates are now computed correctly.</p></li>
</ul>
</section>
<section id="v0-0-8-2021-02-26">
<h2>v0.0.8 (2021-02-26)<a class="headerlink" href="#v0-0-8-2021-02-26" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Show richer auto-complete information in code editor.</p></li>
<li><p>Update to new Skulpt.</p></li>
<li><p>Add support for Safari browser.</p></li>
<li><p>(Internal developer-experience fixes.)</p></li>
</ul>
</section>
<section id="v0-0-7-2021-02-16">
<h2>v0.0.7 (2021-02-16)<a class="headerlink" href="#v0-0-7-2021-02-16" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>(Internal build system improvements.)</p></li>
<li><p>Add documentation outlining how to get started with Pytch
development.</p></li>
</ul>
</section>
<section id="v0-0-6-2021-01-20">
<h2>v0.0.6 (2021-01-20)<a class="headerlink" href="#v0-0-6-2021-01-20" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>(Internal build system improvements.)</p></li>
<li><p>Add new costume/backdrop methods/properties to auto-completion list.</p></li>
</ul>
</section>
<section id="v0-0-5-2021-01-12">
<h2>v0.0.5 (2021-01-12)<a class="headerlink" href="#v0-0-5-2021-01-12" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Allow user to vertically drag the horizontal separator between (code
and stage) and info-pane.  If user’s screen is vertically short,
this lets them see more of the tutorial.  (Thanks to Eoin Condron
for report.)</p></li>
</ul>
</section>
<section id="v0-0-4-2021-01-08">
<h2>v0.0.4 (2021-01-08)<a class="headerlink" href="#v0-0-4-2021-01-08" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>Add methods <code class="docutils literal notranslate"><span class="pre">Sprite.next_costume()</span></code> and <code class="docutils literal notranslate"><span class="pre">Stage.next_backdrop()</span></code>.</p></li>
<li><p>Extend methods <code class="docutils literal notranslate"><span class="pre">Sprite.switch_costume()</span></code> and
<code class="docutils literal notranslate"><span class="pre">Stage.switch_backdrop()</span></code> to accept a zero-based integer for
the costume or backdrop to switch to, as an alternative to the
existing string name.</p></li>
<li><p>Add attributes <code class="docutils literal notranslate"><span class="pre">Sprite.costume_number</span></code>, <code class="docutils literal notranslate"><span class="pre">Sprite.costume_name</span></code>,
<code class="docutils literal notranslate"><span class="pre">Stage.backdrop_number</span></code>, and <code class="docutils literal notranslate"><span class="pre">Stage.backdrop_name</span></code>.</p></li>
</ul>
</section>
<section id="v0-0-1v0-0-3">
<h2>v0.0.1–v0.0.3<a class="headerlink" href="#v0-0-1v0-0-3" title="Link to this heading">¶</a></h2>
<p>Initial experimental releases.</p>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper"><ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../webapp/user/index.html">Using the Pytch web app</a></li>
<li class="toctree-l1"><a class="reference internal" href="../vm/user/index.html">Writing Pytch programs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../about.html">About Pytch</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contact.html">Contact</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../developer.html">Developer documentation</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../developer/development-setup.html">Development setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="../developer/design-overview.html">Design overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="../vm/developer/index.html">VM</a></li>
<li class="toctree-l2"><a class="reference internal" href="../webapp/developer/index.html">Webapp</a></li>
<li class="toctree-l2"><a class="reference internal" href="../medialib/developer/index.html">Media library</a></li>
<li class="toctree-l2"><a class="reference internal" href="../developer/index.html">Website</a></li>
<li class="toctree-l2"><a class="reference internal" href="../build-tools/index.html">Tools</a></li>
<li class="toctree-l2"><a class="reference internal" href="../source-build.html">Source and build information</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Changelog</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#vm-m-p-yyyy-mm-dd">vM.m.p (YYYY-MM-DD)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-9-0-2025-01-09">v2.9.0 (2025-01-09)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-8-1-2024-12-11">v2.8.1 (2024-12-11)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-8-0-2024-11-19">v2.8.0 (2024-11-19)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-7-1-2024-11-02">v2.7.1 (2024-11-02)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-7-0-2024-10-30">v2.7.0 (2024-10-30)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-6-0-2024-10-21">v2.6.0 (2024-10-21)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-5-0-2024-09-16">v2.5.0 (2024-09-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-4-0-2024-09-10">v2.4.0 (2024-09-10)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-3-0-2024-07-10">v2.3.0 (2024-07-10)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-2-0-2024-05-30">v2.2.0 (2024-05-30)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-1-0-2024-05-10">v2.1.0 (2024-05-10)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v2-0-0-2024-04-03">v2.0.0 (2024-04-03)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-11-1-2023-12-21">v1.11.1 (2023-12-21)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-11-0-2023-12-21">v1.11.0 (2023-12-21)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-10-0-2023-11-14">v1.10.0 (2023-11-14)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-9-0-2023-08-30">v1.9.0 (2023-08-30)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-8-0-2023-08-15">v1.8.0 (2023-08-15)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-7-0-2023-07-19">v1.7.0 (2023-07-19)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-6-0-2023-06-27">v1.6.0 (2023-06-27)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-5-1-2023-06-01">v1.5.1 (2023-06-01)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-5-0-2023-05-31">v1.5.0 (2023-05-31)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-4-1-2023-05-09">v1.4.1 (2023-05-09)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-4-0-2023-05-09">v1.4.0 (2023-05-09)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-3-0-2023-03-06">v1.3.0 (2023-03-06)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-2-0-2023-01-16">v1.2.0 (2023-01-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-1-0-2022-11-29">v1.1.0 (2022-11-29)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v1-0-0-2022-10-21">v1.0.0 (2022-10-21)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-36-2022-10-12">v0.0.36 (2022-10-12)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-35-2022-09-29">v0.0.35 (2022-09-29)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-34-2022-09-15">v0.0.34 (2022-09-15)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-33-2022-08-19">v0.0.33 (2022-08-19)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-32-2022-07-18">v0.0.32 (2022-07-18)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-31-2022-07-12">v0.0.31 (2022-07-12)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-30-2022-06-16">v0.0.30 (2022-06-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-29-2022-06-03">v0.0.29 (2022-06-03)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-28-2022-05-19">v0.0.28 (2022-05-19)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-27-2022-05-16">v0.0.27 (2022-05-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-26-2022-03-12">v0.0.26 (2022-03-12)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-25-2022-03-04">v0.0.25 (2022-03-04)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-24-2022-02-28">v0.0.24 (2022-02-28)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-23-2021-09-15">v0.0.23 (2021-09-15)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-22-2021-09-14">v0.0.22 (2021-09-14)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-21-2021-09-08">v0.0.21 (2021-09-08)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-20-2021-09-03">v0.0.20 (2021-09-03)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-19-2021-08-26">v0.0.19 (2021-08-26)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-18-2021-07-27">v0.0.18 (2021-07-27)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-17-2021-07-22">v0.0.17 (2021-07-22)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-16-2021-07-07">v0.0.16 (2021-07-07)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-15-2021-06-04">v0.0.15 (2021-06-04)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-14-2021-05-21">v0.0.14 (2021-05-21)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-13-2021-05-15">v0.0.13 (2021-05-15)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-12-2021-04-03">v0.0.12 (2021-04-03)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-11-2021-03-16">v0.0.11 (2021-03-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-10-2021-03-16">v0.0.10 (2021-03-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-9-2021-03-03">v0.0.9 (2021-03-03)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-8-2021-02-26">v0.0.8 (2021-02-26)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-7-2021-02-16">v0.0.7 (2021-02-16)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-6-2021-01-20">v0.0.6 (2021-01-20)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-5-2021-01-12">v0.0.5 (2021-01-12)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-4-2021-01-08">v0.0.4 (2021-01-08)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#v0-0-1v0-0-3">v0.0.1–v0.0.3</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../legal/index.html">Legal information</a></li>
</ul>
<div class="docs-home-link"><hr>
  <ul>
    <li>
      <a href="../index.html">Pytch help home</a>
    <li>
  </ul>
</div>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
  </body>
</html>